#pragma once
#include<stdio.h>

#define NUM 1024 //缓冲区的大小

//缓冲区刷新方式
#define BUFF_NONE 0x1
#define BUFF_LINE 0x2
#define BUFF_ALL 0x4

typedef struct _MY_FILE
{
  int fd;//文件描述符
  int flags;//刷新方式
  char outputbuffer[NUM];//缓冲区
  int current;//记录缓冲区写入的位置
}MY_FILE;


//几个函数接口

//打开文件            文件的名字       打开方式
MY_FILE* my_fopen(const char*path,const char*mode);

//写入文件        写入内容     每个元素的大小  多少个元素   指定文件
size_t my_fwrite(const void*ptr,size_t size,size_t nmemb,MY_FILE*stream);

//关闭文件
int my_fclose(MY_FILE* fp);

//刷新缓冲区
int my_fflush(MY_FILE*fp);
